It is often desirable to provide some system or apparatus for encrypting computer software particularly where it is desired to prevent tampering with the software by a person who is in possession of the software. An example is a student who is using educational computer programs in which his score is retained in the computer memory disk which the student may have in his possession. The difficulty with prior art attempts at providing such a system was that they required relatively large code and data requirements, such as in the IBM/NBS DES type systems.
It is also desirable that the nature of the encryption should provide a form of electronic signature for each originating user. This will allow the person deciphering the text to determine whether the presenter of the encrypted text is authorized to be in possession of it. The encryption system must allow for a transfer of data among users of the authoriing systems.